home *** CD-ROM | disk | FTP | other *** search
/ CD ROM Paradise Collection 4 / CD ROM Paradise Collection 4 1995 Nov.iso / program / vgl20.zip / VGLFADE.C < prev    next >
C/C++ Source or Header  |  1993-05-12  |  2KB  |  90 lines

  1. #include "vgl.h"
  2.  
  3. static char far Pal[768];
  4.  
  5. vglBlack()
  6. {
  7.    memset( Pal, 0, 768 );
  8.    vglSetPal( Pal );
  9. }
  10.  
  11. vglFadeIn( char far* palette )
  12. {
  13.    int i, j, v;
  14.  
  15.    for( i = 0; i < 32; i++ )
  16.    {
  17.       for( j = 0; j < 768; j++ )
  18.          Pal[j] =  (i * (unsigned)palette[j]) >> 5;
  19.       vglSetPal( Pal );
  20.    }
  21. }
  22.  
  23. vglFadeOut( char far* palette )
  24. {
  25.    int i, j, v;
  26.  
  27.    for( i = 31; i >= 0; i-- )
  28.    {
  29.       for( j = 0; j < 768; j++ )
  30.          Pal[j] =  (i * (unsigned)palette[j]) >> 5;
  31.       vglSetPal( Pal );
  32.    }
  33. }
  34.  
  35. vglPartFadeIn( int first, int num, char far* palette )
  36. {
  37.    int i, j, v;
  38.  
  39.    for( i = 0; i < 32; i++ )
  40.    {
  41.       for( j = 0; j < num * 3; j++ )
  42.          Pal[j] =  (i * (unsigned)palette[j]) >> 5;
  43.       vglSetPartPal( first, num, Pal );
  44.    }
  45. }
  46.  
  47. vglPartFadeOut( int first, int num, char far* palette )
  48. {
  49.    int i, j, v;
  50.  
  51.    for( i = 31; i >= 0; i-- )
  52.    {
  53.       for( j = 0; j < num * 3; j++ )
  54.          Pal[j] =  (i * (unsigned)palette[j]) >> 5;
  55.       vglSetPartPal( first, num, Pal );
  56.    }
  57. }
  58.  
  59. vglPartCycleL( int first, int num, char far* palette )
  60. {
  61.    int i, a, b, c;
  62.  
  63.    num--;
  64.    a = palette[0];
  65.    b = palette[1];
  66.    c = palette[2];
  67.    for( i = 0; i < num * 3; i++ )
  68.       palette[i] = palette[i + 3];
  69.    palette[i] = a;
  70.    palette[i + 1] = b;
  71.    palette[i + 2] = c;
  72.    vglSetPartPal( first, num + 1, palette );
  73. }
  74.  
  75. vglPartCycleR( int first, int num, char far* palette )
  76. {
  77.    int i, a, b, c;
  78.  
  79.    i = (num * 3) - 1;
  80.    a = palette[i - 2];
  81.    b = palette[i - 1];
  82.    c = palette[i];
  83.    for( ; i >= 3; i-- )
  84.       palette[i] = palette[i - 3];
  85.    palette[0] = a;
  86.    palette[1] = b;
  87.    palette[2] = c;
  88.    vglSetPartPal( first, num, palette );
  89. }
  90.